# -*- coding: utf-8 -*-
"""
---------------------------------------
@File    ：add_total_ip.py
@Author  ：liyunhui
@Date    ：2024/9/27 下午2:30 
@explain : 向队列中添加所有的代理
---------------------------------------
"""
from config import config
from methods import redis_connect

redis_key = config.ip_pool_total_ip

import pandas as pd

# 读取 Excel 文件（假设文件名为 'data.xlsx'）
file_path = 'server.xlsx'  # 修改为你的文件路径
df = pd.read_excel(file_path)

# 设置输出列表
output_data = []

# 遍历每一行
for index, row in df.iterrows():
    # 提取 IP 和端口
    ip_port = row['IP端口'].split(':')
    ip = ip_port[0]
    port = ip_port[1] if len(ip_port) > 1 else 'Unknown'

    # 判断 is_domestic 值
    is_domestic = 'False' if '香港' in row['产品名'] else 'True'

    # 生成字典
    entry = {
        "ip": ip,
        "port": port,
        "user": "root",  # 固定值
        "password": "75b0ff65baeb",  # 固定值
        "is_domestic": is_domestic,
        "server_name": row['云服务器名'],
        "intranet_ip": row['内网IP']
    }

    # 将每一行的数据添加到输出列表中
    output_data.append(entry)


redis_cli = redis_connect.get_redis_cli()
for proxy in output_data:
    intranet_ip = proxy.get("intranet_ip")
    key = redis_key + ":" + intranet_ip
    for field, value in proxy.items():
        redis_cli.hset(key, field, value)
